﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;
using Silverlight_Client.Commands_Utils;
using System.Collections.ObjectModel;

namespace Silverlight_Client.ViewModels
{
    public class AuthVerificationVM : IViewModelBase
    {
        #region Fields

        private ICommand                        _cancelcmd, _okcmd;
        private String                          _answer, _title;
        private ObservableCollection<String>    _questions;

        #endregion

        #region Properties

        public String Answer
        {
            get { return _answer; }
            set
            {
                if (_answer == value) return;
                _answer = value;
                RaisePropertyChanged("Answer");
            }
        }
        public String Title
        {
            get { return _title; }
            set
            {
                if (_title == value) return;
                _title = value;
                RaisePropertyChanged("Title");
            }
        }
        public ObservableCollection<String> Questions
        {
            get { return _questions; }
            set
            {
                if (_questions == value) return;
                _questions = value;
                RaisePropertyChanged("Questions");
            }
        }

        #endregion

        #region Commands
        
        public ICommand CancelCmd
        {
            get { return _cancelcmd; }
        }
        public ICommand OkCmd
        {
            get { return _okcmd; }
        }

        #endregion

        #region Commands Functions

        void CancelFunc()
        {
        }
        void OkFunc()
        {
        }

        #endregion

        #region Functions
        
        void FillQuestions()
        {
        }
        
        #endregion

        #region Ctors

        public AuthVerificationVM()
        {
            _cancelcmd = new RelayCommand(CancelFunc) { IsEnabled = true };
            _okcmd = new RelayCommand(OkFunc) { IsEnabled = true };
            _answer = _title = String.Empty;
            _questions = new ObservableCollection<string>();
            this.FillQuestions();
        }

        #endregion
    }
}
